//
//  Node.cpp
//  Simulation
//
//  Created by Christopher Kemsley on 3/3/12.
//  Copyright (c) 2012 iAppolopolis. All rights reserved.
//

#include "Model.hpp"

NamespaceBegin

std::ostream&	operator<<	( std::ostream& stream , ModelVariant const & variant )
	{
	stream << "<" ;
	stream << variant.builderName ;
	stream << " (\"" << variant.instanceName << "\") @ " ;
	stream << variant.configURL << ">" ;
	return stream ;
	}

NamespaceEnd




using namespace Sim ;



ModelVariant :: ModelVariant ( )
:	builderName()
,	instanceName()
,	configURL()
	{
	
	}
ModelVariant :: ModelVariant ( ModelVariant const & copy )
:	builderName(copy.builderName)
,	instanceName(copy.instanceName)
,	configURL(copy.configURL)
	{
	
	}
ModelVariant :: ~ModelVariant ()
	{
	
	}
bool			ModelVariant :: isComplete ()
	{
	if ( builderName.size() == 0 )
		return false ;
	if ( instanceName.size() == 0 )
		return false ;
	if ( configURL.path().size() == 0 )
		return false ;
	return true ;
	}

ModelVariant&	ModelVariant :: operator=	( ModelVariant const & copy )
	{
	builderName=copy.builderName;
	instanceName=copy.instanceName;
	configURL=copy.configURL;
	return *this ;
	}


